Protocols exist, that enable a user at a local computer to access and share the desktop of a remote computer (e.g. a central server) over a computer network. One such protocol is the Remote Desktop Protocol (“RDP”), as provided by Microsoft Corporation, which provides remote display and input capabilities over network connections. Another protocol that can be used in this context is the Remote Graphics Software (“RGS”) protocol from the Hewlett Packard Co. RGS is designed to take advantage of the computer and graphics resources of a remote computer to deliver interactive remote access at the local computer. The desktop video data of the remote computer is transmitted over a network to the local computer, which displays the desktop video data locally in a window at the local computer. RGS captures user keyboard and mouse inputs at the local computer, and sends the keyboard and mouse inputs to the remote computer for processing by the operating system of the remote computer, and by applications running on the remote computer. RGS also allows data of some peripheral devices such as storage devices to be communicated from the local computer to the remote computer.
One general class of peripheral devices is the class of devices that can generate or receive isochronous data (an “isochronous device”). Isochronous data, by its nature, is intended to be continuous and real-time in its creation, delivery and consumption. Because timing-related information is implied by the steady rate at which isochronous data is received and transferred, isochronous data must be delivered at least as fast as it is generated in order for it to be used as intended. For example, when voice data is being transmitted from an isochronous device, any delays or discontinuities in the transmitted data stream can cause drop-outs or other irregularities to be noticed audibly at the receiver.